package me.qi.kancha.service;

import me.qi.kancha.dto.core.UserDTO;
import me.qi.kancha.service.base.BaseService;
import me.qi.kancha.vo.user.UserBatchBindVo;
import me.qi.kancha.vo.user.UserInfo;

import java.util.List;

/**
* 用户实体模块-service接口
*
* @author sun
* @date 2022-08-21 12:36:21
*/
public interface UserService extends BaseService<UserDTO> {

    /**
     * 用户绑定角色
     *
     * @return
     */
    boolean bind(UserDTO user, List<String> codes);

    /**
     * 批量新增
     *
     * @param param
     * @return
     */
    boolean batchBind(UserBatchBindVo param);

    /**
     * 根据用户名进行模糊查询用户信息
     *
     * @param name
     * @return
     */
    List<UserInfo> getUserInfosByName(String name);

    /**
     * 根据账号id查询用户信息
     * @param aid
     */
    UserDTO detailByAid(String aid);

    /**
     * 权限信息
     * @param id
     * @return
     */
    List<String> ruleCodes(String id);
}
